artisan make:migrationで指定できる--createと--tableはなにをするのか?
artisan make:migrationで指定できる--createと--tableは結局なにをやるのか?
新しいテーブルを作成するときはcreate
既存のテーブルを更新するときはtable
カラムの追加など
をつかうようだ
Migrationをつかってテーブルを変更する際には、初回に作ったMigrationクラスを変更するのではなく、新たに変更分のスクリプトを生成する。そのときにtableを使うということらしいkadoyau.icon
実際に使ったときに生成されるクラス
php artisan make:migration create_test_table --create=create_test
code:createOption.php
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTestTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
# --createを指定するとSchema::createが作成される
Schema::create('create_test', function (Blueprint $table) {
$table->increments('id');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('create_test');
}
}
php artisan make:migration create_test_table --table=table_test
(追記)こちらの場合はテーブルを変更するのでchange_test_tableとかの名前になることが多そう
code:tableOption.php
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTestTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
// --tableを指定するとSchema::tableが作成される
Schema::table('table_test', function (Blueprint $table) {
//
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('table_test', function (Blueprint $table) {
//
});
}
}